<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .box {
            width: 100px;
            height: 100px;
            background-color: #6ff;
        }
    </style>
</head>

<body>
    <div class="box">

    </div>
</body>
<script>
    // try/catch/finally 语句用于处理代码中可能出现的错误信息。
    // 1. 捕获代码在执行过程中可能出来的错误, 防止其影响后续代码的执行
    // 2. 兼容写法  (错误发生时的补救性措施)


    /* 
         Error    通用错误

        EvalError
            与eval()有关， 当调用 eval() 失败时抛出。
        RangeError
            数值变量或参数超出了其有效范围
        ReferenceError
            一个无效的引用(eg: strict模式下引用了一个未声明的变量等)
        SyntaxError
            当 JavaScript 语法错误时抛出。
        TypeError
            变量或参数不属于有效类型
    
    
    */


    // 常见的错误
    // var var = 1;   // Uncaught SyntaxError: Unexpected token 'var'
    // console.log(c);   // Uncaught ReferenceError: c is not defined

    // throw 11111;

    // var err = new Error("This is a Error");  // 通用错误
    var err = new EvalError("This is a Error");  // 通用错误
    var err = new RangeError("Place entry a num between 1 and 10");  // 通用错误
    var err = new ReferenceError("c is not defined");  // 通用错误
    var err = new SyntaxError("Unexpected token ,");  // 通用错误
    var err = new TypeError("paramter 1 require  object,bool give in");  // 通用错误

    // console.log(err);
    throw err;






</script>

</html>